package com.bwie.spu.service;

import java.util.List;

import com.bwie.spu.domain.dto.ProductUpDTO;
import com.bwie.spu.domain.po.ProductPo;
import com.bwie.spu.domain.vo.ProductVo;

/**
 * spu信息Service接口
 *
 * @author bwie
 * @date 2024-12-18
 */
public interface IPmsSpuInfoService
{
    /**
     * 查询spu信息
     *
     * @param id spu信息主键
     * @return spu信息
     */
    public ProductPo selectPmsSpuInfoById(Integer id);

    /**
     * 查询spu信息列表
     *
     * @param productPo spu信息
     * @return spu信息集合
     */
    public List<ProductVo> selectPmsSpuInfoList(ProductPo productPo);

    /**
     * 新增spu信息
     *
     * @param productPo spu信息
     * @return 结果
     */
    public int insertPmsSpuInfo(ProductPo productPo);

    /**
     * 修改spu信息
     *
     * @param productPo spu信息
     * @return 结果
     */
    public int updatePmsSpuInfo(ProductPo productPo);

    /**
     * 批量删除spu信息
     *
     * @param ids 需要删除的spu信息主键集合
     * @return 结果
     */
    public int deletePmsSpuInfoByIds(Integer[] ids);

    /**
     * 删除spu信息信息
     *
     * @param id spu信息主键
     * @return 结果
     */
    public int deletePmsSpuInfoById(Integer id);

    /**
     * 上架
     * @param productUpDTO
     */
    void productUp(ProductUpDTO productUpDTO);
}
